package org.huangrui.spark.scala.core.rdd.operate

import org.apache.spark.{SparkConf, SparkContext}

/**
 * @Author hr
 * @Create 2024-10-17 5:01
 */
object Spark05_Operate_Transform_groupBy_1 {
  def main(args: Array[String]): Unit = {
    val conf = new SparkConf().setMaster("local[*]").setAppName("spark")
    val sc = new SparkContext(conf)
    val numbs = List(1, 2, 3, 4)
    val rdd = sc.parallelize(numbs, 2)

    // TODO RDD的方法：groupBy,按照指定的规则对数据进行分组
    // 1 -> 奇数
    // 2 -> 偶数
    // 3 -> 奇数
    // 4 -> 偶数
    // (偶数, [2,4])
    // (奇数, [1,3])
    rdd.groupBy((num: Int) => if (num % 2 == 0) "偶数" else "奇数").collect().foreach(println)

    sc.stop()
  }
}
